home *** CD-ROM | disk | FTP | other *** search
- Path: xanth!cs.odu.edu!Amiga-Request
- From: Amiga-Request@cs.odu.edu (Amiga Sources/Binaries Moderator)
- Newsgroups: comp.sources.amiga
- Subject: v90i114: FTOS - convert DAsm assembler output to Motorola S-Records, Part01/01
- Message-ID: <11804@xanth.cs.odu.edu>
- Date: 15 Mar 90 01:35:16 GMT
- Sender: tadguy@cs.odu.edu
- Reply-To: salan@ub.d.umn.edu (Salim !!)
- Lines: 428
- Approved: tadguy@cs.odu.edu (Tad Guy)
- X-Mail-Submissions-To: Amiga@cs.odu.edu
- X-Post-Discussions-To: comp.sys.amiga
-
- Submitted-by: salan@ub.d.umn.edu (Salim !!)
- Posting-number: Volume 90, Issue 114
- Archive-name: util/ftos
-
- [ uuencoded binary enclosed. ...tad ]
-
- Convert DAsm assembler output to Motorolla S-Record format
- so that it can be downloaded to an EVB (Evaluation Board).
-
- #!/bin/sh
- # This is a shell archive. Remove anything before this line, then unpack
- # it by saving it into a file and typing "sh file". To overwrite existing
- # files, type "sh file -c". You can also feed this as standard input via
- # unshar, or by typing "sh <file", e.g.. If this archive is complete, you
- # will see the following message at the end:
- # "End of archive 1 (of 1)."
- # Contents: ftos.c ftos.doc ftos.uu
- # Wrapped by tadguy@xanth on Wed Mar 14 20:34:46 1990
- PATH=/bin:/usr/bin:/usr/ucb ; export PATH
- if test -f 'ftos.c' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'ftos.c'\"
- else
- echo shar: Extracting \"'ftos.c'\" \(2885 characters\)
- sed "s/^X//" >'ftos.c' <<'END_OF_FILE'
- X/********************************************************************
- X*
- X* FTOC V1.0 Salim Alam: 90.02.08
- X*
- X* Converts assembler output from DASM to Motorola S Record format.
- X* The code should have been assembled using the -f2 option. The
- X* processor should be defined as 68HC11.
- X*
- X* Usage:
- X*
- X* ftoc <infile> [outfile]
- X*
- X* where "infile" is the filename of the assembler output, and
- X* "outfile" is the name of the file to which the S record will
- X* be output.
- X*
- X* If outfile is not specified, "out.s" will be used for the
- X* output file.
- X*
- X*********************************************************************/
- X
- X#include <stdio.h>
- X#include <ctype.h>
- X#include <libraries/dos.h>
- X#include <libraries/dosextens.h>
- X
- Xmain(argc,argv)
- Xint argc;
- Xchar *argv[];
- X{
- X
- X char infilename[100],outfilename[100];
- X struct FileHandle *infile;
- X FILE *outfile;
- X unsigned short Org, Len, CurrAdd, ToGo;
- X unsigned char CheckSum, RLen;
- X unsigned char buffer[100];
- X int blen, i;
- X
- X
- X /* Check args */
- X
- X if ((argc < 2) || (argc > 3)) {
- X printf("Usage: ftoc <infile> [outfile]\n");
- X exit(10);
- X };
- X
- X strcpy(infilename,argv[1]);
- X if (argc==3)
- X strcpy(outfilename,argv[2]);
- X else
- X strcpy(outfilename,"out.s");
- X
- X
- X
- X /* Open files */
- X
- X if ( (infile=Open(infilename,MODE_OLDFILE)) == 0L) {
- X printf("Unable to open input file '%s'\n",infilename);
- X exit(5);
- X };
- X
- X if ( (outfile=fopen(outfilename,"w")) == 0L) {
- X printf("Unable to open output file '%s'\n",outfilename);
- X exit(5);
- X };
- X
- X
- X
- X /* Main loop */
- X
- X fprintf(outfile,"S00600004844521B\n");
- X
- X for (;;) {
- X blen=Read(infile,buffer,4);
- X if (blen != 4) break; /* Exit if EOF */
- X
- X Org = CurrAdd = (buffer[0]+(256*buffer[1]));
- X Len = ToGo = (buffer[2]+(256*buffer[3]));
- X
- X while (ToGo > 0) { /* Process a line */
- X RLen = (ToGo > 16)? 16 : ToGo;
- X ToGo -= RLen;
- X blen=Read(infile,buffer,RLen);
- X CheckSum = RLen+3+HexAdd(CurrAdd);
- X fprintf(outfile,"S1");
- X PrintHex(outfile,(RLen + 3));
- X PrintHex(outfile,CurrAdd / 256);
- X PrintHex(outfile,CurrAdd % 256);
- X for (i=0; i < RLen; i++) {
- X PrintHex(outfile,buffer[i]);
- X CheckSum += buffer[i];
- X };
- X CheckSum = ~CheckSum;
- X PrintHex(outfile,CheckSum);
- X fprintf(outfile,"\n");
- X CurrAdd += RLen;
- X }; /* while */
- X
- X }; /* for */
- X
- X
- X /* Clean up & exit */
- X
- X fprintf(outfile,"S9030000FC\n");
- X
- X Close(infile);
- X fclose(outfile);
- X
- X} /* main */
- X
- X
- X
- XPrintHex(fp,num)
- XFILE *fp;
- Xunsigned char num;
- X{
- X
- X unsigned char hi,lo;
- X static char *hexmap[] = {'0','1','2','3','4','5','6','7',
- X '8','9','A','B','C','D','E','F'};
- X hi = num / 16;
- X lo = num % 16;
- X
- X fprintf(fp,"%c%c",hexmap[hi],hexmap[lo]);
- X
- X}
- X
- X
- X
- XHexAdd(wnum)
- Xunsigned short wnum;
- X{
- X
- X int hi,lo;
- X
- X hi = wnum / 256;
- X lo = wnum % 256;
- X
- X return(lo+hi);
- X
- X}
- X
- END_OF_FILE
- if test 2885 -ne `wc -c <'ftos.c'`; then
- echo shar: \"'ftos.c'\" unpacked with wrong size!
- fi
- # end of 'ftos.c'
- fi
- if test -f 'ftos.doc' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'ftos.doc'\"
- else
- echo shar: Extracting \"'ftos.doc'\" \(666 characters\)
- sed "s/^X//" >'ftos.doc' <<'END_OF_FILE'
- X
- XFTOS : DAsm Assembler Output -> Motorola S Format
- X---- ------------------------------------------
- X
- XThis program converts assembler output from Matt Dillon's DAsm
- Xprogram to Motorola S Format so that it can be downloaded to
- XEvaluation Boards (EVBs).
- X
- XI am using DAsm to write code for the 68HC11, and download it
- Xto a 68HC11EVB. This program is needed since the EVB download
- Xsoftware requires Motorola S Format records.
- X
- XThis program is public-domain. The source (Manx) and binary
- Xis included with this distribution.
- X
- X /--------------------------------\
- X********* THANK YOU, MATT DILLON, FOR DASM **********
- X \--------------------------------/
- X
- END_OF_FILE
- if test 666 -ne `wc -c <'ftos.doc'`; then
- echo shar: \"'ftos.doc'\" unpacked with wrong size!
- fi
- # end of 'ftos.doc'
- fi
- if test -f 'ftos.uu' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'ftos.uu'\"
- else
- echo shar: Extracting \"'ftos.uu'\" \(11887 characters\)
- sed "s/^X//" >'ftos.uu' <<'END_OF_FILE'
- Xbegin 664 ftos
- XM```#\P`````````#``````````(```9R````M@```!0```/I```&<D[Z!,).]
- XM5?ZZ2.<P``RM`````@`(;0H,K0````,`"&\82'H"@$ZY```+NEA/2'@`"DZYY
- XM```63%A/(&T`#"\H``1(;?^<3KD```K@4$\,K0````,`"&86(&T`#"\H``A(=
- XM;?\X3KD```K@4$]@$$AZ`E1(;?\X3KD```K@4$](>`/M2&W_G$ZY```8A%!/Z
- XM*T#_-&8<2&W_G$AZ`C!.N0``"[I03TAX``5.N0``%DQ83TAZ`CA(;?\X3KD`3
- XM``/$4$\K0/\P9AQ(;?\X2'H"($ZY```+NE!/2'@`!4ZY```63%A/2'H"*2\M;
- XM_S!.N0``!'103TAX``1(;?["+RW_-$ZY```8I$_O``PK0/Z^#*T````$_KYFH
- XM``%><``0+?[#X8!R`!(M_L+0@3M`_RH[0/\N<``0+?[%X8!R`!(M_L30@3M`,
- XM_R@[0/\L2FW_*&,``2(,;0`0_RAC!'`08`9P`#`M_R@;0/\F<``0+?\FD6W_Q
- XM*'``$"W_)B\`2&W^PB\M_S1.N0``&*1/[P`,*T#^OG``,"W_*B\`3KH!^EA/P
- XM<@`2+?\FT(%6@!M`_R=(>@%S+RW_,$ZY```$=%!/<``0+?\F5H`O`"\M_S!.-
- XMN@%F4$]P`#`M_RK@B"\`+RW_,$ZZ`5)03W``,"W_*L"\````_R\`+RW_,$ZZ%
- XM`3I03T*M_KI@+B`M_KI83R\M_S!.N0``$7I83TS?``Q.74YU57-A9V4Z?
- XM(&9T;V,@/&EN9FEL93X@6V]U=&9I;&5="@!O=70N<P!5;F%B;&4@=&\@;W!EN
- XM;B!I;G!U="!F:6QE("<E<R<*`'<`56YA8FQE('1O(&]P96X@;W5T<'5T(&9IQ
- XM;&4@)R5S)PH`4S`P-C`P,#`T.#0T-3(Q0@H`4S$`"@!3.3`S,#`P,$9#"@!.@
- XM5?_^2.<P`!`M``_H"!M`__\0+0`/P#P`#QM`__YP`!`M__[E@$'Y`````"\P=
- XM"`!R`!(M___E@4/Y`````"\Q&`!(>@`8+RT`"$ZY```$=$_O`!!,WP`,3EU.,
- XM=25C)6,``$Y5__A(YS``<``P+0`*X(@K0/_\<``P+0`*P+P```#_*T#_^"`MD
- XM__C0K?_\3-\`#$Y=3G5.50``2.<P($ZY```3`B1`2H!F"G``3-\$#$Y=3G4OX
- XM"B\M``PO+0`(809/[P`,8.9.50``2.<X("\M`!!.N0``$7I83T'Y````0"1("
- XM2A)F%"/\````!0````AP`$S?!!Q.74YU+RT`#"\*3KD```JP4$]*@&<$4(I@;
- XMTB\J``0O+0`(3KD```D`4$\H`+"\_____V8$<`!@Q"!M`!`11``-(&T`$!%\Y
- XM``$`#"`M`!!@K$Y5``!(YS``(^T`"`````!(;0`0+RT`#$AZ`!1.N0``#&Y/C
- XM[P`,3-\`#$Y=3G5.50``2.<P`"\Y`````"\M``A.N0``$+903TS?``Q.74YU_
- XM87Q#^0```MA%^0````"UR68.,CP`$VL(=``BPE')__PCSP````PL>``$(\X`;
- XM```02.>`@`@N``0!*6<02_H`"$ZN_^)@!D*G\U].<T/Z`"1.KOYH(\`````4@
- XM9@PN/``#@`=.KO^48`9.N0``!4I03TYU9&]S+FQI8G)A<GD`2?D``'_^3G5.,
- XM50``2.<P($AY``$``#`Y```"U,'\``8O`$ZY```9%E!/(\`````89AA"ITAY_
- XM``$``$ZY```8Z%!/+GD````,3G4@>0```!A":``$('D````8,7P``0`0(GD`&
- XM```8,WP``0`*('D````,(#D````,D*@`!%"`(\`````<('D````<(+Q-04Y8L
- XM0J=.N0``&2983R1`2JH`K&<X+RT`#"\M``@O"DZY```&UD_O``PC_`````$`+
- XM```@('D````8`&B````$('D````8`&B````*8%A(:@!<3KD``!F.6$](:@!<)
- XM3KD``!E06$\CP````"0@>0```"1*J``D9Q0@>0```"0B:``D+Q%.N0``b$
- XM3R\Y````)"\*3KD```KP4$\C^0```"0````H3KD``!A2('D````8((!.N0``E
- XM&)H@>0```!@A0``&9QI(>`/M2'H`.DZY```8BE!/('D````8(4``#"\Y````%
- XM*"\Y````+$ZY````!%!/0J=.N0``%DQ83TS?!`Q.74YU*@!.50``2.<\,"1M!
- XM`!`@;0`(("@`K.6`*``@1"`H`!#E@"9`$!-(@$C`T*T`#%2`(\`````P0J<OH
- XM.0```#!.N0``&1903R/`````-&8(3-\,/$Y=3G40$TB`2,`O`"!+4H@O""\YJ
- XM````-$ZY```(O$_O``Q(>@%P$!-(@$C`T+D````T+P!.N0``"N!03R\M``PO"
- XM"B\Y````-$ZY```*C$_O``Q"N0```"PF>0```#0D2Q`32(!(P"H`L+P````@?
- XM9R"ZO`````EG&+J\````#&<0NKP````-9PBZO`````IF!%*+8,P,$P`@;0``/
- XMC@P3`")F,E*+($M2BQ`02(!(P"H`9R`@2E**$(6ZO````")F$`P3`")F!%*+>
- XM8`9"*O__8`)@TF!$($M2BQ`02(!(P"H`9S"ZO````"!G*+J\````"6<@NKP`B
- XM```,9QBZO`````UG$+J\````"F<(($I2BA"%8,(@2E**0A!*A68"4XM2N0``I
- XM`"Q@`/\Z0A)"IR`Y````+%*`Y8`O`$ZY```9%E!/(\`````H9@I"N0```"Q@$
- XM`/ZL>@`F>0```#1@'B`%Y8`@>0```"@ABP@`+PM.N0``$()83U*`U\!2A;JYA
- XM````+&W:(`7E@"!Y````*$*P"`!@`/YJ(`!,[P,```0@""(O``Q@`A#95\G_1
- XM_&<&4D%@`D(84<G__$YU3E4``$CG,``O+0`,2'@#`2\M``AA#$_O``Q,WP`,0
- XM3EU.=4Y5``!(YS\P)&T`"$ZY```5U"9Y````&'@`8!)R!B`$3KD``!?^2K,(6
- XM`&<44H0P.0```M1(P+B`;>)Z!F```.H(+0`!``YG/$AX__\O"DZY```8=%!/Y
- XM+`!G*B\&3KD``!C*6$\O"DZY```81%A/2H!F$DZY```87"H`L+P```#-9@``+
- XMIDAX`^TO"DZY```8BE!/+`!*AF9R""T````.9@9Z`6```(1(>`/N+PI.N0``J
- XM&(I03RP`9@I.N0``&%PJ`&!F2'@`(4AZ`+!.N0``&5Y03RX`9PPO!TZY```9O
- XM"%A/8"9(>``!2'H`G"\&3KD``!C83^\`#$AX__]"IR\&3KD``!BZ3^\`#&`N7
- XM("T`#,"\```%`+"\```%`&8<+P9.N0``&"A83WH$(\4````(</],WPS\3EU.Y
- XM=7(&(`1.N0``%_XGA@@`<@8@!$ZY```7_B!`T<LQ;0`.``0(+0`#``YG$DAX%
- XM``%"IR\&3KD``!BZ3^\`#"`$8+AD;W,N;&EB<F%R>0```#`\?_]@!#`O``X@"
- XM;P`$2AAF_%-((F\`"%-`$-E7R/_\9P)"$"`O``1.=3`\?_]@!#`O``Y30&L4?
- XM(&\`!")O``BQ"68,4TA*&%?(__9P`$YU8P1P`4YU</].=2!O``0@"")O``@0-
- XMV6;\3G5.50``2.<^,"1M``A"ITAZ`*1.N0``&5Y03R/`````3&8(3-\,?$Y=^
- XM3G4@;0`,(F@`)"\I``1.N0``&;I83R@`9UI(>@!]($0O*``V3KD``!F<4$\F!
- XM0$J`9SA(>`/M+PM.N0``&(I03RP`9R8@!N6`*@`@125H``@`I"5&`)Q(>`/M>
- XM2'H`1$ZY```8BE!/)4``H"\$3KD``!FL6$\O.0```$Q.N0``&0)83T*Y````Q
- XM3&``_W!I8V]N+FQI8G)A<GD`5TE.1$]7`"H`3E4``$CG,`!(;0`,+RT`"$AY1
- XM```0E$ZY```,;D_O``Q,WP`,3EU.=4Y5``!(YS@@)&T`$`RM````!``49@@@^
- XM;0`(*!!@%$JM``QO""!M``@H$&`&(&T`""@00JT`%$JM``QL$D2M``Q*A&P*@
- XM1(0K?`````$`%"(M``P@!$ZY```0'$'Y````B%.*%+`(`"(M``P@!$ZY```0W
- XM*"@`9MA*K0`49P93BA2\`"T@"DS?!!Q.74YU3E7_%$CG.#`D;0`()FT`#$*MW
- XM__@K;0`0__P@2U*+$!!(@$C`*`!G``,\N+P````E9@`#%D(M_R(K?`````'_O
- XM]"M\````(/_P*WP``"<0_^P@2U*+$!!(@$C`*`"PO````"UF$$*M__0@2U*+,
- XM$!!(@$C`*`"XO````#!F%"M\````,/_P($M2BQ`02(!(P"@`N+P````J9AH@:
- XM;?_\6*W__"M0_^@@2U*+$!!(@$C`*`!@.$*M_^A@)'(*("W_Z$ZY```7_M"$\
- XMD+P````P*T#_Z"!+4HL0$$B`2,`H`$'Y````FP@P``)(`&;.N+P````N9F8@'
- XM2U*+$!!(@$C`*`"PO````"IF&B!M__Q8K?_\*U#_["!+4HL0$$B`2,`H`&`X\
- XM0JW_[&`D<@H@+?_L3KD``!?^T(20O````#`K0/_L($M2BQ`02(!(P"@`0?D`N
- XM``";"#```D@`9LXK?`````3_Y+B\````;&86($M2BQ`02(!(P"@`*WP````$&
- XM_^1@%+B\````:&8,($M2BQ`02(!(P"@`(`1@``""*WP````(_^!@'"M\````\
- XM"O_@8!(K?````!#_X&`(*WS____V_^`O+?_D2&W_(B\M_^`O+?_\3KK]I$_O@
- XM`!`K0/_<("W_Y-&M__Q@7"!M__Q8K?_\*U#_W"\M_]Q.N0``$()83RM`_^1@^
- XM2B!M__Q8K?_\*!!![?\A*TC_W!"$8"B0O````&-GXE.`9Y*0O`````MG`/]LO
- XM68!GLE6`9P#_;%>`9P#_<,0>W_(I'M_]PK2/_D("W_Y+"M_^QO!BMM_^S_?
- XMY$JM__1G<"!M_]P,$``M9PHB;?_<#!$`*V8T#*T````P__!F*E.M_^@@;?_<*
- XM4JW_W!`02(!(P"\`3I)83["\_____V8*</],WPP<3EU.=6`8+RW_\$Z26$^P"
- XMO/____]F!'#_8.)2K?_X("W_Z%.M_^BPK?_D;MI"K?_@8"0@;?_<4JW_W!`0@
- XM2(!(P"\`3I)83["\_____V8$</]@JE*M_^`@;?_<2A!G"B`M_^"PK?_L;<H@M
- XM+?_@T:W_^$JM__1F*F`:2'@`($Z26$^PO/____]F!G#_8`#_<%*M__@@+?_H8
- XM4ZW_Z+"M_^1NV&`8+P1.DEA/L+S_____9@9P_V``_TA2K?_X8`#\N"`M__A@W
- XM`/\X2.=(`$*$2H!J!$2`4D1*@6H&1($*1``!83Y*1&<"1(!,WP`22H!.=4CGH
- XM2`!"A$J`:@1$@%)$2H%J`D2!81H@`6#8+P%A$B`!(A]*@$YU+P%A!B(?2H!.R
- XM=4CG,`!(04I!9B!(038!-`!"0$A`@,,B`$A`,@*"PS`!0D%(04S?``Q.=4A!2
- XM)@$B`$)!2$%(0$)`=`_0@-.!MH%B!)*#4D!1RO_R3-\`#$YU(&\`!"`(2AAF3
- XM_)'`(`A3@$YU3E4``$CG,`!(>0```3(O+0`(3KD``!"V4$],WP`,3EU.=4Y59
- XM``!(YS@`*"T`""\M``PO!$ZY```1!%!/N+P````*9BH@;0`,$"@`#$B`2,`(=
- XM```'9QA(>/__+RT`#$ZY```2"E!/3-\`'$Y=3G5@]DY5``!(YS`@)&T`#"!2J
- XML>H`!&4<("T`","\````_R\`+PI.N@#B4$],WP0,3EU.=2!24I(0+0`+$(!(`
- XM@$C`P+P```#_8.).50``2.<P($'Y```!'"1(($K5_````!8O"&$46$]!^0``(
- XM`M2UR&7H3-\$#$Y=3G5.50``2.<X("1M``AX`"`*9@IP_TS?!!Q.74YU2BH`Z
- XM#&=<""H``@`,9PQ(>/__+PIA7E!/*``0*@`-2(!(P"\`3KD``!>>6$^(@`@JB
- XM``$`#&<,+RH`"$ZY```41EA/""H`!0`,9Q@O*@`23KD``!4,6$\O*@`23KD`7
- XM`!1&6$]"DD*J``1"J@`(0BH`#"`$8(1.5?_^2.<X("1M``A!^O\R(\@````X(
- XM""H`!``,9PIP_TS?!!Q.74YU""H``@`,9S0H$IBJ``@O!"\J``@0*@`-2(!(E
- XMP"\`3KD``!4^3^\`#+"$9Q`(Z@`$``Q"DD*J``1P_V"\#*W_____``QF$`BJX
- XM``(`#$*20JH`!'``8*)*J@`(9@HO"DZY```30EA/#&H``0`09C(;;0`/__](H
- XM>``!2&W__Q`J``U(@$C`+P!.N0``%3Y/[P`,L+P````!9I0@+0`,8`#_6B2J=
- XM``@P*@`02,#0J@`()4``!`CJ``(`#"!24I(0+0`/$(!(@$C`P+P```#_8`#_!
- XM*DY5``!(YS`@0?D```$<)$A**@`,9QS5_````!9!^0```M2UR&4*<`!,WP0,@
- XM3EU.=6#>0I)"J@`$0JH`""`*8.A.5?_\2.<P("1M``A(>`0`3KD``!0N6$\KK
- XM0/_\9AHU?``!`!`@"M"\````#B5```A,WP0,3EU.=35\!```$`CJ``$`#"5MM
- XM__P`"!`J``U(@$C`+P!.N0``%)A83TJ`9P8`*@"```Q@R$Y5``!(YS`P)'D`'
- XM```$8!8F4B`J``10@"\`+PI.N0``&3Y03R1+(`IFYD*Y````!$S?#`Q.74YU*
- XM3E4``$CG,"!!^O^^(\@````\0J<@+0`(4(`O`$ZY```9%E!/)$!*@&8*<`!,M
- XMWP0,3EU.=22Y````!"5M``@`!"/*````!"`*4(!@X$Y5``!(YS``+RT`"&&FT
- XM6$],WP`,3EU.=4Y5``!(YS`PE\LD>0````1@#B!M``A1B+'*9Q(F2B12(`IF'
- XM[G#_3-\,#$Y=3G4@"V<$)I)@!B/2````!"`J``10@"\`+PI.N0``&3Y03W``N
- XM8-1.50``2.<P('(&("T`"$ZY```7_B1`U?D````82JT`"&T4,#D```+42,`BR
- XM+0`(LH!L!$J29A0C_`````(````(</],WP0,3EU.=7(&("T`"$ZY```7_B!YP
- XM````&"\P"`!.N0``&&983TJ`9P1P`6`"<`!@SDY5``!(YS``+RT`"$ZY```86
- XM1%A/2H!F%DZY```87"/`````"'#_3-\`#$Y=3G5P`T3E4``$CG/"`H+0`(Z
- XM3KD``!74<@8@!$ZY```7_B1`U?D````82H1M$#`Y```"U$C`N(!L!$J29A0CE
- XM_`````(````(</],WP0\3EU.=3`J``3`?``#9@XC_`````4````(</]@X"\M6
- XM`!`O+0`,+Q).N0``&-A/[P`,*@"PO/____]F$$ZY```87"/`````"'#_8+(@)
- XM!6"N3E7__$CG,`!(>!``0J=.N0``&7Y03RM`__P(```,9QI*N0```"!F#"`MC
- XM__Q,WP`,3EU.=4ZY```6$G``8.Y.50``2.<P`$AX``1(>@`H3KD``!B:+P!.S
- XMN0``&-A/[P`,2'@``4ZY```63%A/3-\`#$Y=3G5>0PH`3E4``$CG,`!*N0``9
- XM`#AG""!Y````.$Z0+RT`"$ZY```6>%A/3-\`#$Y=3G5.5?_\2.<X`"MM``C__
- XM_$JY````&&<V>`!@#"\$3KD``!>>6$]2A#`Y```"U$C`N(!MZ#`Y```"U,'\4
- XM``8O`"\Y````&$ZY```9/E!/2KD````\9P@@>0```#Q.D$JY````0&<.+SD`S
- XM``!`3KD``!D(6$]*N0```$1G#B\Y````1$ZY```9"%A/2KD```!(9PXO.0``N
- XM`$A.N0``&0A83RQX``0(+@`$`2EG%"\-2_H`"DZN_^(J7V`&0J?S7TYS2KD`T
- XM```D9CA*N0```#1G+B\Y````,"\Y````-$ZY```9/E!/(#D````L4H#E@"\`J
- XM+SD````H3KD``!D^4$]@%$ZY```9-"\Y````)$ZY```9<%A/("W__"YY````'
- XM#$YU3-\`'$Y=3G5.50``2.<^("@M``AR!B`$3KD``!?^)$#5^0```!A*A&T0>
- XM,#D```+42,"X@&P$2I)F%"/\`````@````AP_TS?!'Q.74YU,"H`!,!\@`!FV
- XM"B\23KD``!@H6$]"DG``8-Y(YW``-`'$P"8!2$/&P$A#0D/4@TA`P,%(0$)`%
- XMT(),WP`.3G5.^0``&"@B+P`$+'D````43N[_W"(O``0L>0```!1.[O^"(B\`6
- XM!"QY````%$[N_[@L>0```!1.[O_*+'D````43N[_?"(O``0L>0```!1.[O\H/
- XM3.\`!@`$+'D````43N[_K$[Y```8BDSO``8`!"QY````%$[N_^(L>0```!1.P
- XM[O_$3OD``!BJ3.\`#@`$+'D````43N[_UDSO``X`!"QY````%$[N_[XB+P`$E
- XM+'D````43N[_IDSO``X`!"QY````%$[N_]!(YP$$3.\@@``,+'D````03J[_V
- XME$S?((!.=4[Y```9"")O``0L>0```!!.[OYB3.\``P`$+'D````03N[_.B)OM
- XM``0L>0```!!.[O[:+'D````03N[_?")O``0@+P`(+'D````03N[_+B!O``0L"
- XM>0```!!.[OZ,+'D````0(F\`!"`O``A.[OW8(F\`!"QY````$$[N_H9,[P`#)
- XM``0L>0```!!.[O[.(&\`!"QY````$$[N_H!,[P,```0L>0```$Q.[O^@(&\`@
- XM!"QY````3$[N_Z8@;P`$+'D```!,3N[_L@```^P````4`````0```U8```-H/
- XM```$"@``!,@```5$```%6@``"3````P^```-3```#;H``!">```15```$6H`S
- XM`!,,```3(```%+P``!5H```6H```%JP``!?"````>@`````````F````,@``"
- XM`$8```!D````=@```(8```"<````J````+@```#.````V@```.H```#^```!S
- XM@````;(```):```"?````H@```*4```#>@```\X```0"```$,```!$@```227
- XM```$M@``!2X```5F```%?@``!=8```7P```&(@``!BX```94```&9```!G8`'
- XM``:$```&G@``!KP```;&```'%```!T````=<```'<```"&````B4```)#@``3
- XM"2(```E0```)7@``"6@```ET```)C```":X```FZ```)S```"=H```GN```*A
- XM````"B````H^```*3```"FP```L$```+*```"SX```M2```+>```"X8```N49
- XM```+S```"](```PX```,4```#2X```V<```.9```$*@``!#*```0]```$;P`-
- XM`!'2```1Y@``$?(``!)2```2D@``$KH``!-4```3F```$\@``!0````4C@``4
- XM%*@``!3J```4^@``%1H``!4F```53```%58``!6N```5P@``%>0``!8*```6'
- XM)```%BP``!8Z```6:@``%I8``!:^```6Y```%OH``!<0```75```%VX``!=XF
- XM```7A```%[```!?R```8)```&(8``!BF```9!````'4````"```$&@``!(``Y
- XM``2L```$S@``!.8```3P```%&@``!6X```6&```%C@``!9@```6D```%L```+
- XM!;8```7"```%R```!?X```8$```&$```!C8```8\```&2```!EP```9L```&8
- XM<```!GP```:*```&I@``!K````:V```'!@``!PX```<<```'.@``!U0```=JR
- XM```'>@``!X````A&```(5```"&@```AP```(?```"(@```BB```(K@``"10`K
- XM``HJ```+#```"XX```N<```2'```$[0``!/6```3\```%!@``!0D```44@``V
- XM%'X``!2P```4U```%/```!4L```57@``%7P``!6:```5R```%?8``!96```6@
- XM7@``%H@``!:X```6Q@``%LX``!;6```6W@``%NP``!;T```7`@``%PH``!<X_
- XM```70```%T@``!=.```77```%V@``!=^```7D```%[@``!?6```8+@``P`?
- XM`!A*```85```&%X``!AL```8?```&)(``!B<```8L@``&,(``!C0```8X```^
- XM&/0``!D.```9'@``&2P``!DV```92```&58``!E@```9=@``&88``!F4```9[
- XMI```&;(``!G``````````_(```/J````M@```#`````Q````,@```#,````T:
- XM````-0```#8````W````.````#D```!!````0@```$,```!$````10```$9R:
- XM`````````'(K```````"=P```````P%W*P`````#`F$```````D!82L`````X
- XM"0)X```````%`7@K``````4"```````````P,3(S-#4V-S@Y86)C9&5F````5
- XM("`@("`@("`@,#`P,#`@("`@("`@("`@("`@("`@(""00$!`0$!`0$!`0$!`@
- XM0$!`#`P,#`P,#`P,#$!`0$!`0$`)"0D)"0D!`0$!`0$!`0$!`0$!`0$!`0$!!
- XM`4!`0$!`0`H*"@H*"@("`@("`@("`@("`@("`@("`@("0$!`0"``````````%
- XM`````````0`````!``````````````````````$!`````0``````````````%
- XM```````!`@````$`````````````````````````````````````````````$
- XM`````````````````````````````````````````````````````````````
- XM`````````````````````````````````````````````````````````````
- XM`````````````````````````````````````````````````````````````
- XM`````````````````````````````````````````````````````````````
- XM`````````````````````````````````````````````````````````````
- XM`````````````````````````````````````````````````````````````
- XM`````````````````````````````````````````````````````````````
- XM````````````````````````````````````````%``````#\@```^L````4+
- X$```#\@``U
- X``
- Xend
- Xsize 8464
- END_OF_FILE
- if test 11887 -ne `wc -c <'ftos.uu'`; then
- echo shar: \"'ftos.uu'\" unpacked with wrong size!
- fi
- # end of 'ftos.uu'
- fi
- echo shar: End of archive 1 \(of 1\).
- cp /dev/null ark1isdone
- MISSING=""
- for I in 1 ; do
- if test ! -f ark${I}isdone ; then
- MISSING="${MISSING} ${I}"
- fi
- done
- if test "${MISSING}" = "" ; then
- echo You have the archive.
- rm -f ark[1-9]isdone
- else
- echo You still need to unpack the following archives:
- echo " " ${MISSING}
- fi
- ## End of shell archive.
- exit 0
- --
- Mail submissions (sources or binaries) to <amiga@cs.odu.edu>.
- Mail comments to the moderator at <amiga-request@cs.odu.edu>.
- Post requests for sources, and general discussion to comp.sys.amiga.
-